#ifndef __ACTIONEDITORW_H_
#define __ACTIONEDITORW_H_

#include <QWidget>

QT_FORWARD_DECLARE_CLASS(QDesignerActionEditorInterface)

class ActionEditorW : public QWidget
{
    Q_OBJECT
    Q_CLASSINFO("ClassID", "{5a0f4db4-01d2-401a-a4f8-f9a082d49287}")
    Q_CLASSINFO("InterfaceID", "{e0de8c30-4b57-4baf-af10-c6dbc3a2febd}")
    Q_CLASSINFO("EventsID", "{f5bea006-4baf-46f9-8105-afa24a3e7fe8}")
    Q_CLASSINFO("ToSuperClass", "ActionEditorW")

public:
    ActionEditorW(QWidget *parent = 0);
    ~ActionEditorW();

    QSize minimumSize();
    static ActionEditorW *instance();

public Q_SLOTS:
    QString pluginFailureString() const;
    bool initializeJambiPlugins(const QString &jambiBase, const QString &jambiPluginPath, const QString &customWidgetClassPath, const QString &resourcePath, const QString &jvm);
    void initialize();
    void updateCustomWidgetLocation(const QString &path);

protected:
    void resizeEvent(QResizeEvent *event);

private:
    QDesignerActionEditorInterface *m_editor;
    uint m_initialized : 1;
    static ActionEditorW *m_self;
};

#endif //__ACTIONEDITORW_H_
